package dados;

import negocios.Debito;
import negocios.excecoes.GestockException;

public class RepositorioDebito implements IRepositorioDebito {

	private static RepositorioDebito instancia = null;

	public static RepositorioDebito getInstancia() {

		if (instancia == null) {
			instancia = new RepositorioDebito();
		}

		return instancia;

	}

	public void cadastrarDebito(Debito debito) throws GestockException {

		try {
			ConexaoBDDebito conecta = new ConexaoBDDebito();
			conecta.cadastrarDebito(debito);
		} catch (Exception e) {
			e.printStackTrace();
		}

	}

	public Object[][] listarDebitos() throws GestockException {
		Object[][] debitos = null;
		try {
			ConexaoBDDebito conecta = new ConexaoBDDebito();
			debitos = conecta.listarDebitos();
		}

		catch (Exception e) {
			e.printStackTrace();
		}

		return debitos;
	}

	public Debito consultarDebito(String idDebito) throws GestockException {
		Debito debito = null;
		try {
			ConexaoBDDebito conecta = new ConexaoBDDebito();
			debito = conecta.consultarDebito(idDebito);
		}

		catch (Exception e) {
			e.printStackTrace();
		}

		return debito;
	}

	public void alterarDebito(Debito debito) throws GestockException {
		try {
			ConexaoBDDebito conecta = new ConexaoBDDebito();
			conecta.alterarDebito(debito);
		}

		catch (Exception e) {
			e.printStackTrace();
		}

	}

	public void alterarDataPagoDebito(String DataPago, int idDebito)
			throws GestockException {
		try {
			ConexaoBDDebito conecta = new ConexaoBDDebito();
			conecta.alterarDataPagoDebito(DataPago, idDebito);
		}

		catch (Exception e) {
			e.printStackTrace();
		}
	}

}
